'''
2020 年春节期间，有一个特殊的日期引起了大家的注意：2020 年 2 月 2 日。
因为如果将这个日期按 yyyymmdd 的格式写成一个 8 位数是 20200202，恰好是一个回文数。
我们称这样的日期是回文日期。
有人表示 20200202 是“千年一遇” 的特殊日子。
对此小明很不认同，因为不到 2 年之后就是下一个回文日期：20211202 即 2021 年 12 月 2 日。
也有人表示 20200202 并不仅仅是一个回文日期，还是一个 ABABBABA 型的回文日期。
对此小明也不认同，因为大约 100 年后就能遇到下一个 ABABBABA 型的回文日期：21211212 即 2121 年 12 月 12 日。
算不上“千年一遇”，顶多算“千年两遇”。
给定一个 8 位数的日期，请你计算该日期之后下一个回文日期和下一个 ABABBABA 型的回文日期各是哪一天。
注意：下一个回文日期和下一个 ABABBABA 型的回文日期可能是同一天。
ABABBABA 型的回文日期，需要满足 A≠B。
输入格式
输入包含一个八位整数 N，表示日期。
输出格式
第一行表示下一个回文日期，
第二行表示下一个 ABABBABA 型的回文日期。
'''

'''
s = input()
d = {1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}

def huiwen(s):
    if s[:4] == s[4:][::-1]:
        return 1
    return 0

def ab(s):
    if s[0] == s[2] and s[1] == s[3] and s[0] != s[1]:
        return 1
    return 0

year = int(s[:4])
month = int(s[4:6])
day = int(s[6:])
out = []

while True:
    if month <= 12:
        if day <= d[month]:
            date = str(year).zfill(4)+str(month).zfill(2)+str(day).zfill(2)
            if huiwen(date):
                out.append(date)
                if ab(date):
                    print(out[0])
                    print(date)
                    break
            day += 1
        else:
            month += 1
            day = 1
    else:
        month = 1
        year += 1
'''


def check1(date):# 判断是否为回文日期
    if date == date[::-1]: # 此代码正在反转存储在变量“date”中的整个字符串,1. 首先，代码调用变量“date”。 冒号用于分隔所访问位置范围的起点和终点。 两个冒号表示正在访问整个仓位范围。. “-1”表示字符顺序应颠倒。此代码正在反转存储在变量“date”中的整个字符串
        return True
    return False
def check2(date):# 判断是否为ABABBABA型
    if check1(date):
        if date[:4] == date[4:][::-1]:
            if date[:2] == date[2:4]:
                return True  # 此检查用于确定用户输入的日期是否采用 mmddyyyy 格式，其中前两位数字等于颠倒的最后两位数字。如果是这样，该函数将返回 True。
    return False
if __name__ == "__main__":
    date = int(input())
    year = int(date / 10000) # 年份
    month = int(date % 10000 / 100) # 月份
    day = date % 100 + 1 # 天数
    # 闰年2月有29天--year % 400 == 0 || (year % 4 == 0 && year % 100 != 0
    flag = True # 标记查找回文日期是否停止
    flag2 = True # 标记查找ABABBABA型是否停止
    date1 = "" # 回文日期
    date2 = "" # ABABBABA型日期
    while(flag or flag2): # 一次while循环就循环一年的每一天
        # 循环月份
        for m in range(month,13):
            days = 0
            # 判断二月的天数
            if m == 2:
                if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):
                    days = 29 # 闰年2月份29天
                else:
                    days = 28
            elif m in [4,6,9,11]:
                days = 30 # 小月
            else:
                days = 31   # 大月
            for d in range(day, days):
                tmp = str(year) + str('%02d'%m) + str('%02d'%d) # 生成一个表示指定年、月、日的字符串，格式为 YYYYMMDD。
                if flag and check1(tmp):
                    date1 = tmp
                    flag = False
                if check2(tmp):
                    date2 = tmp
                    flag2 = False
        year += 1 # 如果没有找到往下一年继续找，年份加1
        month = 1 # 新的年份从1月开始
        day = 1 # 从1号开始
    print(date1)
    print(date2)
